#include "widget.h"
#include "./ui_widget.h"

#include <QPixmap>
#include <QResizeEvent>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    // 1. 设置 显示的文本 的文本格式
    ui->label->setTextFormat(Qt::MarkdownText);
    // ui->label->setText("hello world 觉得咖啡a机穿升级皮甲打发打发大师傅打发女大会封建等级饭卡了阿萨金卡的看法j大家看法你可能来查看女啊批号京东卡JFK打算减肥安静的");

    // // 2. 给这个标签设置图片
    // QRect window_rect = this->geometry();
    // ui->label->setGeometry(window_rect);	// 先给标签设置比较大的大小, 设置和窗口一样大
    //
    // // 2.1 设置图片之后，这个图片的大小和窗口不一致
    // QPixmap pixmap(":/me.jpg");
    // ui->label->setPixmap(pixmap);
    //
    // // 2.2 启动自动拉伸，让图片和窗口一样大
    // ui->label->setScaledContents(true);		// 拉伸填充物
    //
    // // 2.3 拖拽窗口的时候，大小会发生连续变化，但是会触发 resize 事件，需要让 Widget 窗口类 重写 QWeight 的 resizeEvent 虚函数

    // 3. 对齐、自动换行、缩进
    // 3.1 实现 垂直、水平居中
    // ui->label->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter);
    // 3.2 实现 靠右、垂直居中
    // ui->label->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
    // 3.3 实现 靠右，靠上
    // ui->label->setAlignment(Qt::AlignRight | Qt::AlignTop);
    // 3.4 实现 自动换行
    // ui->label->setWordWrap(true);
    // 3.5 设置 缩进(50px), 但是每一行都会缩进
    // ui->label->setIndent(50);
    // 3.6 设置 边距(4个方向)
    // ui->label->setMargin(5);
    // 3.7 设置 伙伴 buddy
    //     label 文本上跟一个 &A 表示快捷键，表示 alt + A
    // ui->label->setBuddy(ui->radioButton);


}

Widget::~Widget()
{
    delete ui;
}

// 这里的 QResizeEvent 会存储触发 Resize 时的窗口尺寸
void Widget::resizeEvent(QResizeEvent *e)
{
    qDebug() << e->size();
    ui->label->setGeometry(0, 0, e->size().width(), e->size().height());
}
